package com.hourses.service;

import com.hourses.page.Page;
import com.hourses.pojo.Result;
import com.hourses.pojo.Role;
import com.hourses.pojo.RoleAuth;

import java.util.List;

public interface RoleService {
    /**
     * 查询数据库所有角色(Service)
     */
    public List<Role> selectAllRoles();

    /**
     * 查询用户已有的角色(Service)
     */
    public List<Role> selectUserRolesByUserRole(Integer userId);

    //查询角色列表
    public Page getRolestPage(Role role,Page page);

    //添加角色
    public Result addRole(Role role);

    //启用或者禁用角色
    public Result startOrCloseRole(Role role);

    //根据roleId删除角色
    public Result deleteRoleById(Integer roleId);

    //
    public List<Integer> selectAuthIdsByRoleId(Integer roleId);

    //根据roleId删除对应role的所有auth
    public Integer deleteAuthsByRoleId(Integer roleId);

    //向role_auth表中添加数据
    public Integer insertRoleAuth(RoleAuth roleAuth);

    //修改角色描述
    public Result updateRoleDesc(Role role);
}
